package com.employ.job.domain;

import java.math.BigDecimal;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.employ.common.annotation.Excel;
import com.employ.common.core.domain.BaseEntity;
import org.springframework.data.annotation.Transient;

/**
 * 职位对象 emp_jobs
 *
 * @author ruoyi
 * @date 2025-02-24
 */
public class EmpJobs extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 职位ID */
    private Long id;

    /** 公司ID */
    @Excel(name = "公司ID")
    private String companyId;

    /** 公司名称 */
    @Transient
    private String companyName;

    /** 职位名称 */
    @Excel(name = "职位名称")
    private String title;

    /** 职位描述 */
    @Excel(name = "职位描述")
    private String description;

    /** 职位要求 */
    @Excel(name = "职位要求")
    private String requirements;

    /** 最低薪资 */
    @Excel(name = "最低薪资")
    private BigDecimal salaryMin;

    /** 最高薪资 */
    @Excel(name = "最高薪资")
    private BigDecimal salaryMax;

    /** 工作地点 */
    @Excel(name = "工作地点")
    private String location;

    /** 职位类型 */
    @Excel(name = "职位类型")
    private String jobType;

    /** 职位状态 */
    @Excel(name = "职位状态")
    private String status;

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId()
    {
        return id;
    }
    public void setCompanyId(String companyId)
    {
        this.companyId = companyId;
    }

    public String getCompanyId()
    {
        return companyId;
    }
    public void setTitle(String title)
    {
        this.title = title;
    }

    public String getCompanyName() {
        return companyName;
    }

    public void setCompanyName(String companyName) {
        this.companyName = companyName;
    }

    public String getTitle()
    {
        return title;
    }
    public void setDescription(String description)
    {
        this.description = description;
    }

    public String getDescription()
    {
        return description;
    }
    public void setRequirements(String requirements)
    {
        this.requirements = requirements;
    }

    public String getRequirements()
    {
        return requirements;
    }
    public void setSalaryMin(BigDecimal salaryMin)
    {
        this.salaryMin = salaryMin;
    }

    public BigDecimal getSalaryMin()
    {
        return salaryMin;
    }
    public void setSalaryMax(BigDecimal salaryMax)
    {
        this.salaryMax = salaryMax;
    }

    public BigDecimal getSalaryMax()
    {
        return salaryMax;
    }
    public void setLocation(String location)
    {
        this.location = location;
    }

    public String getLocation()
    {
        return location;
    }
    public void setJobType(String jobType)
    {
        this.jobType = jobType;
    }

    public String getJobType()
    {
        return jobType;
    }
    public void setStatus(String status)
    {
        this.status = status;
    }

    public String getStatus()
    {
        return status;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("companyId", getCompanyId())
            .append("title", getTitle())
            .append("description", getDescription())
            .append("requirements", getRequirements())
            .append("salaryMin", getSalaryMin())
            .append("salaryMax", getSalaryMax())
            .append("location", getLocation())
            .append("jobType", getJobType())
            .append("status", getStatus())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .toString();
    }
}
